<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Voro++: voro::wall_sphere Struct Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Voro++
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript" src="dynsections.js"></script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><b>voro</b>      </li>
      <li class="navelem"><a class="el" href="structvoro_1_1wall__sphere.html">wall_sphere</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">voro::wall_sphere Struct Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="voro::wall_sphere" --><!-- doxytag: inherits="voro::wall" -->
<p>A class representing a spherical wall object.  
 <a href="structvoro_1_1wall__sphere.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="wall_8hh_source.html">wall.hh</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for voro::wall_sphere:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
 <div class="center">
  <img src="structvoro_1_1wall__sphere.png" usemap="#voro::wall_sphere_map" alt=""/>
  <map id="voro::wall_sphere_map" name="voro::wall_sphere_map">
<area href="classvoro_1_1wall.html" title="Pure virtual class from which wall objects are derived." alt="voro::wall" shape="rect" coords="0,0,112,24"/>
</map>
 </div></div>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structvoro_1_1wall__sphere.html#ad37f5096c5b84ffe6c011047a5ac9f78">wall_sphere</a> (double xc_, double yc_, double zc_, double rc_, int w_id_=-99)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structvoro_1_1wall__sphere.html#a08695201299833a5ccebecc016fe8413">point_inside</a> (double x, double y, double z)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class v_cell &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structvoro_1_1wall__sphere.html#a3779ab19fab2ed104f8a8c0bdb5773b4">cut_cell_base</a> (v_cell &amp;c, double x, double y, double z)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structvoro_1_1wall__sphere.html#a0ded43a5ed66e6099203c780e03e1fff">cut_cell</a> (<a class="el" href="classvoro_1_1voronoicell.html">voronoicell</a> &amp;c, double x, double y, double z)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structvoro_1_1wall__sphere.html#a67f806cace710d4cbca901ef9228a197">cut_cell</a> (<a class="el" href="classvoro_1_1voronoicell__neighbor.html">voronoicell_neighbor</a> &amp;c, double x, double y, double z)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>This class represents a spherical wall object. </p>

<p>Definition at line <a class="el" href="wall_8hh_source.html#l00021">21</a> of file <a class="el" href="wall_8hh_source.html">wall.hh</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad37f5096c5b84ffe6c011047a5ac9f78"></a><!-- doxytag: member="voro::wall_sphere::wall_sphere" ref="ad37f5096c5b84ffe6c011047a5ac9f78" args="(double xc_, double yc_, double zc_, double rc_, int w_id_=&#45;99)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">voro::wall_sphere::wall_sphere </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>xc_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>yc_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>zc_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>rc_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>w_id_</em> = <code>-99</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Constructs a spherical wall object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">w_id_</td><td>an ID number to associate with the wall for neighbor tracking. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">(xc_,yc_,zc_)</td><td>a position vector for the sphere's center. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">rc_</td><td>the radius of the sphere. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="wall_8hh_source.html#l00029">29</a> of file <a class="el" href="wall_8hh_source.html">wall.hh</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a0ded43a5ed66e6099203c780e03e1fff"></a><!-- doxytag: member="voro::wall_sphere::cut_cell" ref="a0ded43a5ed66e6099203c780e03e1fff" args="(voronoicell &amp;c, double x, double y, double z)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool voro::wall_sphere::cut_cell </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classvoro_1_1voronoicell.html">voronoicell</a> &amp;&#160;</td>
          <td class="paramname"><em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>z</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>A pure virtual function for cutting a cell without neighbor-tracking with a wall. </p>

<p>Implements <a class="el" href="classvoro_1_1wall.html#ab54b4c6d37223584f1fbf653d0b17d14">voro::wall</a>.</p>

<p>Definition at line <a class="el" href="wall_8hh_source.html#l00034">34</a> of file <a class="el" href="wall_8hh_source.html">wall.hh</a>.</p>

</div>
</div>
<a class="anchor" id="a67f806cace710d4cbca901ef9228a197"></a><!-- doxytag: member="voro::wall_sphere::cut_cell" ref="a67f806cace710d4cbca901ef9228a197" args="(voronoicell_neighbor &amp;c, double x, double y, double z)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool voro::wall_sphere::cut_cell </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classvoro_1_1voronoicell__neighbor.html">voronoicell_neighbor</a> &amp;&#160;</td>
          <td class="paramname"><em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>z</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>A pure virtual function for cutting a cell with neighbor-tracking enabled with a wall. </p>

<p>Implements <a class="el" href="classvoro_1_1wall.html#a1e246285ea5a5879e4370db9633e75a6">voro::wall</a>.</p>

<p>Definition at line <a class="el" href="wall_8hh_source.html#l00035">35</a> of file <a class="el" href="wall_8hh_source.html">wall.hh</a>.</p>

</div>
</div>
<a class="anchor" id="a3779ab19fab2ed104f8a8c0bdb5773b4"></a><!-- doxytag: member="voro::wall_sphere::cut_cell_base" ref="a3779ab19fab2ed104f8a8c0bdb5773b4" args="(v_cell &amp;c, double x, double y, double z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class v_cell &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool voro::wall_sphere::cut_cell_base </td>
          <td>(</td>
          <td class="paramtype">v_cell &amp;&#160;</td>
          <td class="paramname"><em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>z</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Cuts a cell by the sphere wall object. The spherical wall is approximated by a single plane applied at the point on the sphere which is closest to the center of the cell. This works well for particle arrangements that are packed against the wall, but loses accuracy for sparse particle distributions. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">c</td><td>the Voronoi cell to be cut. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">(x,y,z)</td><td>the location of the Voronoi cell. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>True if the cell still exists, false if the cell is deleted. </dd></dl>

<p>Definition at line <a class="el" href="wall_8cc_source.html#l00029">29</a> of file <a class="el" href="wall_8cc_source.html">wall.cc</a>.</p>

</div>
</div>
<a class="anchor" id="a08695201299833a5ccebecc016fe8413"></a><!-- doxytag: member="voro::wall_sphere::point_inside" ref="a08695201299833a5ccebecc016fe8413" args="(double x, double y, double z)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool voro::wall_sphere::point_inside </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>z</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Tests to see whether a point is inside the sphere wall object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">(x,y,z)</td><td>the vector to test. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>True if the point is inside, false if the point is outside. </dd></dl>

<p>Implements <a class="el" href="classvoro_1_1wall.html#ae49edf1ae1036be9ffaa5c2bd7fcd82d">voro::wall</a>.</p>

<p>Definition at line <a class="el" href="wall_8cc_source.html#l00017">17</a> of file <a class="el" href="wall_8cc_source.html">wall.cc</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following files:<ul>
<li><a class="el" href="wall_8hh_source.html">wall.hh</a></li>
<li><a class="el" href="wall_8cc_source.html">wall.cc</a></li>
</ul>
</div>


<hr class="footer"/><address class="footer"><small>
Generated on Fri Sep 23 2011 22:49:07 for Voro++ by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.5.1
</small></address>

</body>
</html>
